package com.example.web03homework.service;

import com.example.web03homework.pojo.Book;
import com.example.web03homework.pojo.Category;
import com.example.web03homework.pojo.extend.BookExtend;

import java.util.List;

//书籍service接口
public interface BookService {
    //根据ID查询书籍
    Book getById(Integer id);
    
    //条件查询书籍信息
    List<Book> getByCondition(String keyword, Integer categoryId);
    
    //条件查询书籍信息【含二级分类信息】
    List<BookExtend> getBooksByCondition(String keyword, Integer categoryId);

    //新增书籍
    void addBook(Book book);
    
    //修改书籍
    void updateBook(Book book);

    //修改书籍状态【0为上架 1为下架】，要求 /books/{id}/{status}
    void modifyBookStatus(Integer id, Integer status);
    
    //删除书籍
    void deleteById(Integer id);

    //批量删除书籍
    void removeBatchByIds(List<Integer> ids);
    
    //获取所有分类
    List<Category> getAllCategories();
}
